When to use splay trees

نویسندگان

  • Eric K. Lee
  • Charles U. Martel
چکیده

In this paper we present new empirical results for splay trees. These results provide a better understanding of how cache performance affects query execution time. Our results show that splay trees can have faster lookup times compared with randomly built binary search trees (BST) under certain settings. In contrast, previous experiments have shown that because of the instruction overhead involved in splaying, splay trees are less efficient in answering queries than randomly built BSTs—even when the data sets are heavily skewed (a favorable setting for splay trees). We show that at large tree sizes the difference in cache performance between the two types of trees is significant. This difference means that splay trees are faster than BSTs for this setting—despite still having a higher instruction count. Based on these results we offer guidelines in terms of tree size, access pattern, and cache size as to when splay trees will likely be more efficient. We also present a new splaying heuristic aimed at reducing instruction count and show that it can improve on standard splaying by 10–27%. Copyright c © 2007 John Wiley & Sons, Ltd.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Multi-Splay Trees

In this thesis, we introduce a new binary search tree data structure called multi-splay tree and prove that multi-splay trees have most of the useful properties different binary search trees (BSTs) have. First, we demonstrate a close variant of the splay tree access lemma [ST85] for multi-splay trees, a lemma that implies multi-splay trees have the O(log n) runtime property, the static finger p...

متن کامل

Inorder traversal of splay trees

Splay trees, a form of self-adjusting binary tree, were introduced by Sleator and Tarjan in the early 1980s. Their main use is to store ordered lists. The idea is to keep the trees reasonably well balanced through a ‘splay heuristic.’ Sleator and Tarjan showed that if amortised rather than worst-case times are considered, splay trees are optimal. Splay trees have the advantage of simplicity: th...

متن کامل

Splay Tree

Splay trees are self-adjusting binary search trees which were invented by Sleator and Tarjan [1]. This entry provides executable and verified functional splay trees. The amortized complexity of splay trees is analyzed in the AFP entry Amortized Complexity.

متن کامل

Dynamic Optimality and Multi-Splay Trees1

The Dynamic Optimality Conjecture [ST85] states that splay trees are competitive (with a constant competitive factor) among the class of all binary search tree (BST) algorithms. Despite 20 years of research this conjecture is still unresolved. Recently Demaine et al. [DHIP04] suggested searching for alternative algorithms which have small, but non-constant competitive factors. They proposed tan...

متن کامل

Applying the Interleave Bound to Splay Trees

We give a discussion of the Interleave Bound for dynamic optimal binary search, along with some new properties and results. We attempt to apply these results to Splay Trees, in the hope of working towards a proof that splay trees are O(lg lg n)-competitive. Some partial results and conjectures are formulated.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Softw., Pract. Exper.

دوره 37  شماره 

صفحات  -

تاریخ انتشار 2007